//
//  NativeCallVO.h
//  Base
//
//  Created by liuwei7 on 2017/8/16.
//  Copyright © 2017年 com.yhd. All rights reserved.
//

#import <Foundation/Foundation.h>

typedef id _Nonnull (^NativeCallVOBlock)(id _Nonnull param);

FOUNDATION_EXTERN NSString const * _Nonnull RouterCallbackKey;
FOUNDATION_EXTERN NSString const * _Nonnull RouterParamKey;
FOUNDATION_EXTERN NSString const * _Nonnull RouterAppParamKey;
FOUNDATION_EXTERN NSString const * _Nonnull RouterWillExecuteKey;

FOUNDATION_EXTERN NSString const * _Nonnull RouterFromHostKey;
FOUNDATION_EXTERN NSString const * _Nonnull RouterFromSchemeKey;

@interface NativeCallVO : NSObject

@property (nonatomic, copy) NSString * _Nonnull routeKey;// 注册函数 的key
@property (nonatomic, copy) NSString * _Nonnull keyInfo;// 注册函数 的功能（描述）
@property (nonatomic, copy) NSDictionary * _Nonnull params;//注册函数 执行 需要的参数
@property (nonatomic, copy) NativeCallVOBlock _Nonnull block;//注册函数 执行 需要的block

/**
 * 负责往调用处  回传 参数
 */
- (id _Nonnull )callBlockWithParams:(nonnull NSDictionary *)params;

+ (void)updateUserInterfaceStyle:(UIUserInterfaceStyle)style;
+ (void)resetUserInterfaceStyle;
@end

